package com.spic.business.train.certificate.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.spic.common.core.annotation.Excel;
import com.spic.common.core.web.domain.BaseEntity;

import javax.validation.constraints.Max;
import javax.validation.constraints.NotNull;

/**
 * 员工证书对象 user_certificate
 * 
 * @author spic
 * @date 2021-10-15
 */
public class UserCertificate extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private String id;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Long userId;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String name;

    /** 证书号 */
    @Excel(name = "证书号")
    private String certificateNo;

    /** 发证部门 */
    @Excel(name = "发证部门")
    private String issuingDepartment;

    /** 有效期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "有效期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date validTime;

    /** $column.columnComment */
    @NotNull
    private String fileName;

    /** $column.columnComment */
    @NotNull
    private String fileUrl;

    /** 成绩 */
    @Excel(name = "成绩")

    private BigDecimal score;

    /** 0 正常 1已删除 */
    @Excel(name = "0 正常 1已删除")
    private String deleteFlag;
    //培训用户id
    private Long trainUserId;

    public Long getTrainUserId() {
        return trainUserId;
    }

    public void setTrainUserId(Long trainUserId) {
        this.trainUserId = trainUserId;
    }

    public void setId(String id)
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }
    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }
    public void setName(String name) 
    {
        this.name = name;
    }

    public String getName() 
    {
        return name;
    }
    public void setCertificateNo(String certificateNo) 
    {
        this.certificateNo = certificateNo;
    }

    public String getCertificateNo() 
    {
        return certificateNo;
    }
    public void setIssuingDepartment(String issuingDepartment) 
    {
        this.issuingDepartment = issuingDepartment;
    }

    public String getIssuingDepartment() 
    {
        return issuingDepartment;
    }
    public void setValidTime(Date validTime) 
    {
        this.validTime = validTime;
    }

    public Date getValidTime() 
    {
        return validTime;
    }
    public void setFileName(String fileName) 
    {
        this.fileName = fileName;
    }

    public String getFileName() 
    {
        return fileName;
    }
    public void setFileUrl(String fileUrl) 
    {
        this.fileUrl = fileUrl;
    }

    public String getFileUrl() 
    {
        return fileUrl;
    }
    public void setScore(BigDecimal score) 
    {
        this.score = score;
    }

    public BigDecimal getScore() 
    {
        return score;
    }
    public void setDeleteFlag(String deleteFlag) 
    {
        this.deleteFlag = deleteFlag;
    }

    public String getDeleteFlag() 
    {
        return deleteFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("userId", getUserId())
            .append("name", getName())
            .append("certificateNo", getCertificateNo())
            .append("issuingDepartment", getIssuingDepartment())
            .append("validTime", getValidTime())
            .append("fileName", getFileName())
            .append("fileUrl", getFileUrl())
            .append("createTime", getCreateTime())
            .append("createBy", getCreateBy())
            .append("score", getScore())
            .append("deleteFlag", getDeleteFlag())
            .toString();
    }
}
